#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Generic;
using Cephei.QL.Processes;
using Cephei.QL.Math;
namespace Cephei.QL.Methods.Finitedifferences
{
     
    [Guid ("645BD48D-2A5D-4bda-937D-2F75D3963348"),ComVisible(true)]
	public interface IPdeBSM : Cephei.QL.Methods.Finitedifferences.IPdeSecondOrderParabolic
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
        
		 Double Diffusion(Double t, Double x);
        
		 Double Discount(Double t, Double prm1);
        
		 Double Drift(Double t, Double x);
    }

    // <summary> 
	//  Factory
	// </summary>
   	[ComVisible(true)]
    public interface IPdeBSM_Factory // : Collection_Factory<IPdeBSM, ICell<IPdeBSM>>
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
        
	    IPdeBSM Create (Cephei.QL.Processes.IGeneralizedBlackScholesProcess process);
    }
}

